IF MM.AreaTag = '?' THEN DO ; SAY '' ; SAY MM.PrgName' (C) 1994-96 By Paolo Carotenuto' ; SAY '' ; SAY 'Usage:' ; SAY 'Rx MM_DLGUpload' ; SAY '' ; EXIT 0 ; END ; OPTIONS RESULTS ; IF ~SHOW( 'l', "rexxsupport.library" ) THEN DO ; IF ~ADDLIB( "rexxsupport.library", 0, -30, 0 ) THEN DO ; SAY LogDate() '- Could not open rexxsupport.library' ; EXIT 10 ; END ; END
IF MM.AreaTag = '' THEN DO ; ADDRESS 'MAILMANAGER' ; CALL WriteLog(MM.PrgName' - Started!') ; MakeDir('T:DLGTick') ; MM_ImportTicks ; MM.Dirs = '' ; MM.Dirs = UPPER(SHOWDIR('T:DLGTick','D',' ')) ; IF MM.Dirs ~= '' THEN DO ; DO WHILE MM.Dirs ~= '' ; PARSE VAR MM.Dirs TagName MM.Dirs ; MM.UpDir = SHOWDIR('T:DLGTick/'||TagName,'D',' ') ; MM.Uploader = TRANSLATE(STRIP(TRANSLATE(MM.UpDir," ","#"))," ","_") ; MM_DeleteFile 'T:DLGTick/'||TagName||'/'||MM.UpDir ; Messaggio.From = MM.Uploader ; Messaggio.To = 'ALL' ; Messaggio.Subj = 'New Files' ; Messaggio.Tear = MM.PrgName ; Messaggio.File = 'T:DLGTick/'||TagName||'/MM_TickLog.txt' ; MM_WriteMsg TagName Messaggio ; MM_DeleteFile 'T:DLGTick/'||TagName||'/MM_TickLog.txt' ; MM_DeleteFile 'T:DLGTick/'||TagName ; END ; MM_Export 'SMARTEXPORT' ; END ; MM_DeleteFile 'T:DLGTick' ; CALL WriteLog(MM.PrgName' - Done!') ; EXIT 0 ; END
AreaLog: PROCEDURE EXPOSE MM. ; MM.AreaLog.Count = 0 ; MM.Logs.Count = 0 ; DO WHILE MM.UserFlags ~= '' ; Posi = LASTPOS('#',MM.UserFlags) ; CALL Strippa(RIGHT(MM.UserFlags,LENGTH(MM.UserFlags)-Posi)) ; MM.UserFlags = LEFT(MM.UserFlags,Posi-1) ; END ; IF ~EXISTS('T:DLGTick') THEN DO ; IF ~EXISTS(MM.HatchLog) THEN DO ; ADDRESS COMMAND 'C:Copy >NIL: 'MM.Banner MM.HatchLog ; END
IF ~OPEN('Tmp',MM.HatchLog, 'A') THEN DO ; SAY LogDate() '- *** Error: Can not open 'MM.HatchLog ; EXIT 10 ; END ; CALL Lista('Tmp') ; CALL CLOSE('Tmp') ; RETURN ; END ; DO WHILE MM.Log ~= '' ; PARSE VAR MM.Log LogName MM.Log ; Cont = MM.Logs.Count ; MM.Logs.Cont = LogName ; MM.Logs.Count = Cont + 1 ; END ; DO j = 0 FOR MM.Logs.Count ; IF ~EXISTS(MM.Logs.j) THEN DO ; ADDRESS COMMAND 'C:Copy >NIL: 'MM.Banner MM.Logs.j ; END ; IF ~OPEN('Tmp',MM.Logs.j, 'A') THEN DO ; SAY LogDate() '- *** Error: Can not open 'MM.Logs.j ; ITERATE ; END ; CALL Lista('Tmp') ; CALL CLOSE('Tmp') ; END
DO WHILE MM.Aree ~= '' ; PARSE VAR MM.Aree TagName MM.Aree ; Cont = MM.AreaLog.Count ; MM.AreaLog.Cont = TagName ; MM.AreaLog.Count = Cont + 1 ; END ; DO i = 0 FOR MM.AreaLog.Count ; IF ~EXISTS('T:DLGTick/'||MM.AreaLog.i) THEN DO ; MakeDir('T:DLGTick/'||MM.AreaLog.i) ; MakeDir('T:DLGTick/'||MM.AreaLog.i||'/#'||MM.Uploader) ; ADDRESS COMMAND 'C:Copy >NIL: 'MM.Banner 'T:DLGTick/'||MM.AreaLog.i||'/MM_TickLog.txt' ; END ; IF OPEN(MM.AreaLog.i,'T:DLGTick/'||MM.AreaLog.i||'/MM_TickLog.txt','A') THEN DO ; CALL Lista(MM.AreaLog.i) ; CLOSE(MM.AreaLog.i) ; END ; ELSE DO ; SAY LogDate() '- File not Open -> T:DLGTick/'||MM.AreaLog.i||'/MM_TickLog.txt' ; EXIT 10 ; END ; END ; RETURN
Strippa: PROCEDURE EXPOSE MM. ; PARSE ARG Linea ; IF INDEX(Linea,'AREAS') ~= 0 THEN DO ; Posi = INDEX(Linea,'=') ; MM.Aree = TRANSLATE(STRIP(TRANSLATE(RIGHT(Linea,LENGTH(Linea)-Posi)," ","()"))," ","+") ; RETURN ; END ; IF INDEX(Linea,'BANNER') ~= 0 THEN DO ; Posi = INDEX(Linea,'=') ; MM.Banner = STRIP(TRANSLATE(RIGHT(Linea,LENGTH(Linea)-Posi)," ","()")) ; RETURN ; END ; IF INDEX(Linea,'UPLOADER') ~= 0 THEN DO ; Posi = INDEX(Linea,'=') ; MM.Uploader = STRIP(TRANSLATE(RIGHT(Linea,LENGTH(Linea)-Posi)," ","()")) ; RETURN ; END
IF INDEX(Linea,'MODE') ~= 0 THEN DO ; Posi = INDEX(Linea,'=') ; MM.Mode = STRIP(TRANSLATE(RIGHT(Linea,LENGTH(Linea)-Posi)," ","()")) ; RETURN ; END ; IF INDEX(Linea,'LOG') ~= 0 THEN DO ; Posi = INDEX(Linea,'=') ; MM.Log = TRANSLATE(STRIP(TRANSLATE(RIGHT(Linea,LENGTH(Linea)-Posi)," ","()"))," ","+") ; RETURN ; END ; IF INDEX(Linea,'DLGAREA') ~= 0 THEN DO ; Posi = INDEX(Linea,'=') ; MM.DLGArea = STRIP(TRANSLATE(RIGHT(Linea,LENGTH(Linea)-Posi)," ","()")) ; RETURN ; END ; RETURN